Testing Speculative Work in a Lazy/Eager Parallel Functional Language

نویسندگان

  • Alberto de la Encina
  • Ismael Rodríguez
  • Fernando Rubio
چکیده

Eden is a parallel extension of the functional language Haskell. Eden inherits from Haskell its laziness, which allows it to avoid unnecessary computations. However, in order to enable the parallel execution of processes in Eden, this feature must be disabled when new processes are instantiated. Hence, any newly created process can be speculative, as it is not known whether the computations it performs will actually be required for the overall computation. Therefore, the performance of a program may be affected by the unneeded speculation. In this paper we present a framework to compare the speculated computations of an Eden program with the computations it actually requires. Thus, the programmer is provided with a profiling tool allowing him to produce better programs where speculative work fits better the actual necessities.

منابع مشابه

Towards an Operational Semantics for a Parallel Non-Strict Functional Language

Parallel programs must describe both computation and coordination , i.e. what to compute and how to organize the computation. In functional languages equational reasoning is often used to reason about computation. In contrast, there have been many diierent coordination constructs for functional languages, and far less work on reasoning about coordination. We present an initial semantics for GpH...

متن کامل

Evaluation Annotations for Hope+

To fully exploit the parallelism of the Flagship Machine it is desirable to be able to experiment with a variety of evaluation strategies. The ability to control the behaviour of individual functions via annotations is of enormous help in understanding the behaviour of a parallel system and permits the comparison of \lazy" and \eager" versions of languages as well as providing the oportunity to...

متن کامل

The Impact of Laziness on Parallelism and the Limits of StrictnessAnalysisG

The major question examined by this paper is whether suucient ne-grain parallelism can be obtained from programs written in a lazy functional language. To answer this question, we have implemented a prototype compiler based on a novel approach to strictness analysis (called abstract demand propagation) and we have compared this implementation strategy (optimized lazy) with other implementations...

متن کامل

The Impact of Laziness on Parallelism and the Limits of Strictness Analysis

The major question examined by this paper is whether suucient ne-grain parallelism can be obtained from programs written in a lazy functional language. To answer this question, we have implemented a prototype compiler based on a novel approach to strictness analysis (called abstract demand propagation) and we have compared this implementation strategy (optimized lazy) with other implementations...

متن کامل

Ee392c: Advanced Topics in Computer Architecture Speculative Multithreading

The first paper for this lecture [1] categorizes various options for supporting speculative multithreading in hardware, while the second [2] describes a way to implement it in software without specific architectural support. The class discussion covered the requirements and tradeoffs of software, hardware, and hybrid support for speculative multithreading. Thread-level speculation (TLS) is a wa...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

متن کامل
عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2005